const app = getApp();
Page({

    /**
     * 页面的初始数据
     */
    data: {
        product: {},
        queryString: {
            product_id: '',
            page: 1,
            is_img: 0,
        },
        list: [],
        cnt: []
    },
    /**
     * 操作栏选项；
     */
    choose(event) {
        let _this = this;
        let inx = event.currentTarget.dataset.inx;
        let choose = _this.data.cnt;
        for (let key in choose) {
            choose[key].choose = false;
            if (key == inx) {
                choose[key].choose = true;
                _this.setData({
                    'queryString.is_img': choose[key].is_img
                });
            }
        }
        _this.setData({
            cnt: choose,
            'queryString.page': 1
        });
        _this.getComment();
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function(options) {
        this.setData({
            ['queryString.product_id']: options.product_id ? options.product_id : 1
        })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function() {
        this.getComment();
    },

    /**
     * 获取民宿详情；
     */

    /**
     * 获取评论；
     */
    getComment(isReachBottom = false, isPullDown = false) {
        let _this = this;
        app.loading();
        app.HttpsRequest('Comment/index', 'GET', _this.data.queryString).then(ret => {
            if (ret) {
                wx.hideLoading();
                for (let key in ret.data.cnt) {
                    ret.data.cnt[key].choose = false;
                    if (!ret.data.cnt[key].is_img) {
                        ret.data.cnt[key].choose = true;
                    }
                }
                if (isPullDown) {
                    _this.setData({
                        cnt: ret.data.cnt,
                        list: ret.data.list,
                        product: ret.data.product
                    });
                    wx.stopPullDownRefresh();
                    return;
                }
                if (isReachBottom) {
                    _this.setData({
                        list: _this.data.list.concat(ret.data.list),
                        'queryString.page': ret.data.list.length ? _this.data.queryString.page : _this.data.queryString.page - 1
                    });
                    return;
                } else {
                    _this.setData({
                        cnt: _this.data.cnt.length ? _this.data.cnt : ret.data.cnt,
                        list: ret.data.list,
                        product: ret.data.product
                    });
                    return;
                }
            }
        })
    },

    //图片点击事件
    review: function(event) {
        var src = event.currentTarget.dataset.src; //获取data-src
        var imgList = event.currentTarget.dataset.list; //获取data-list
        //图片预览
        wx.previewImage({
            current: src, // 当前显示图片的http链接
            urls: imgList // 需要预览的图片http链接列表
        })
    },

    /**
     * 获取民宿评论的统计；
     */
    getCommentCnt() {
        let _this = this;
        app.HttpsRequest('miniprogram/product/selectProductCommentByCount', 'GET', {
            productID: _this.data.queryString.productID
        }).then(ret => {
            _this.setData({
                cnt: ret.data
            })

        })
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function() {
        this.setData({
            'queryString.page': 1,
            'queryString.is_img': 0,
        });
        this.getComment(false, true);
    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function() {
        this.setData({
            'queryString.page': this.data.queryString.page + 1
        });
        this.getComment(true);
    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function() {

    }
})